package com.tpp.threat_perception_platform.pojo;

/**
 * 
 * @TableName vulnerability
 */
public class Vulnerability {
    /**
     * 自增ID
     */
    private Integer id;

    /**
     * 漏洞名
字
     */
    private String vulName;

    /**
     * 漏洞描
述
     */
    private String vulDesc;

    /**
     * 漏洞等级: 1 高危 2中危 3低危
     */
    private Integer vulLevel;

    /**
     * 请求类型:  GET/POST/PUT/DELETE
     */
    private String vulRequestType;

    /**
     * 漏洞类
型: SQL注入/反序列化
     */
    private String vulType;

    /**
     * 漏洞产
生的路径
     */
    private String vulPath;

    /**
     * 漏洞攻击载荷
     */
    private String vulPayload;

    /**
     * 漏洞的
验证标记
     */
    private String vulFlag;

    /**
     * 自增ID
     */
    public Integer getId() {
        return id;
    }

    /**
     * 自增ID
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 漏洞名
字
     */
    public String getVulName() {
        return vulName;
    }

    /**
     * 漏洞名
字
     */
    public void setVulName(String vulName) {
        this.vulName = vulName;
    }

    /**
     * 漏洞描
述
     */
    public String getVulDesc() {
        return vulDesc;
    }

    /**
     * 漏洞描
述
     */
    public void setVulDesc(String vulDesc) {
        this.vulDesc = vulDesc;
    }

    /**
     * 漏洞等级: 1 高危 2中危 3低危
     */
    public Integer getVulLevel() {
        return vulLevel;
    }

    /**
     * 漏洞等级: 1 高危 2中危 3低危
     */
    public void setVulLevel(Integer vulLevel) {
        this.vulLevel = vulLevel;
    }

    /**
     * 请求类型:  GET/POST/PUT/DELETE
     */
    public String getVulRequestType() {
        return vulRequestType;
    }

    /**
     * 请求类型:  GET/POST/PUT/DELETE
     */
    public void setVulRequestType(String vulRequestType) {
        this.vulRequestType = vulRequestType;
    }

    /**
     * 漏洞类
型: SQL注入/反序列化
     */
    public String getVulType() {
        return vulType;
    }

    /**
     * 漏洞类
型: SQL注入/反序列化
     */
    public void setVulType(String vulType) {
        this.vulType = vulType;
    }

    /**
     * 漏洞产
生的路径
     */
    public String getVulPath() {
        return vulPath;
    }

    /**
     * 漏洞产
生的路径
     */
    public void setVulPath(String vulPath) {
        this.vulPath = vulPath;
    }

    /**
     * 漏洞攻击载荷
     */
    public String getVulPayload() {
        return vulPayload;
    }

    /**
     * 漏洞攻击载荷
     */
    public void setVulPayload(String vulPayload) {
        this.vulPayload = vulPayload;
    }

    /**
     * 漏洞的
验证标记
     */
    public String getVulFlag() {
        return vulFlag;
    }

    /**
     * 漏洞的
验证标记
     */
    public void setVulFlag(String vulFlag) {
        this.vulFlag = vulFlag;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        Vulnerability other = (Vulnerability) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getVulName() == null ? other.getVulName() == null : this.getVulName().equals(other.getVulName()))
            && (this.getVulDesc() == null ? other.getVulDesc() == null : this.getVulDesc().equals(other.getVulDesc()))
            && (this.getVulLevel() == null ? other.getVulLevel() == null : this.getVulLevel().equals(other.getVulLevel()))
            && (this.getVulRequestType() == null ? other.getVulRequestType() == null : this.getVulRequestType().equals(other.getVulRequestType()))
            && (this.getVulType() == null ? other.getVulType() == null : this.getVulType().equals(other.getVulType()))
            && (this.getVulPath() == null ? other.getVulPath() == null : this.getVulPath().equals(other.getVulPath()))
            && (this.getVulPayload() == null ? other.getVulPayload() == null : this.getVulPayload().equals(other.getVulPayload()))
            && (this.getVulFlag() == null ? other.getVulFlag() == null : this.getVulFlag().equals(other.getVulFlag()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getVulName() == null) ? 0 : getVulName().hashCode());
        result = prime * result + ((getVulDesc() == null) ? 0 : getVulDesc().hashCode());
        result = prime * result + ((getVulLevel() == null) ? 0 : getVulLevel().hashCode());
        result = prime * result + ((getVulRequestType() == null) ? 0 : getVulRequestType().hashCode());
        result = prime * result + ((getVulType() == null) ? 0 : getVulType().hashCode());
        result = prime * result + ((getVulPath() == null) ? 0 : getVulPath().hashCode());
        result = prime * result + ((getVulPayload() == null) ? 0 : getVulPayload().hashCode());
        result = prime * result + ((getVulFlag() == null) ? 0 : getVulFlag().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", vulName=").append(vulName);
        sb.append(", vulDesc=").append(vulDesc);
        sb.append(", vulLevel=").append(vulLevel);
        sb.append(", vulRequestType=").append(vulRequestType);
        sb.append(", vulType=").append(vulType);
        sb.append(", vulPath=").append(vulPath);
        sb.append(", vulPayload=").append(vulPayload);
        sb.append(", vulFlag=").append(vulFlag);
        sb.append("]");
        return sb.toString();
    }
}